# /home/yumoshi/riscv-os/kernel/entry.S - 最小改动版本
.section .text
.global _entry
_entry:
    # 早期硬件验证 - 保持原样（启动时安全）
    li t0, 0x10000000
    li t1, 'S'
    sb t1, 0(t0)
    
    # 设置栈
    la sp, stack_top
    
    # 使用C函数进行后续输出
    li a0, 'P'
    call uart_putc          # 调用你的C函数
    
    # 清零BSS段
    la t2, _bss_start
    la t3, _bss_end
clear_bss:
    bgeu t2, t3, done_bss
    sb zero, 0(t2)
    addi t2, t2, 1
    j clear_bss
done_bss:
    
    # 使用C函数输出
    li a0, 'C'
    call uart_putc          # 调用你的C函数
    
    # 跳转到C主函数
    call main

spin:
    j spin